package com.jsb.laundry.model.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
 * 订单付款明细表
 * @TableName jsb_orders_transactions
 */
@TableName(value ="jsb_orders_transactions")
@Data
@NoArgsConstructor
@AllArgsConstructor
@Accessors(chain = true)
@ApiModel(value = "JsbOrdersTransactions对象",description = "交易记录")
public class JsbOrdersTransactions implements Serializable {

    @ApiModelProperty(value = "交易id", dataType = "string")
    private String transId;

    @ApiModelProperty(value = "订单id", dataType = "string")
    private String orderId;

    @ApiModelProperty(value = "用户id", dataType = "string")
    private String userId;

    @ApiModelProperty(value = "金额", dataType = "int")
    private Integer amount;

    @ApiModelProperty(value = "支付费率", dataType = "float")
    private BigDecimal payRate;

    @ApiModelProperty(value = "支付手续费", dataType = "int")
    private int payFee;

    @ApiModelProperty(value = "收款账号（微信、支付宝、银行卡账号）", dataType = "string")
    private String captureAccount;

    @ApiModelProperty(value = "第三方返回的成功支付时间", dataType = "date")
    private Date outPaidAt;

    @ApiModelProperty(value = "支付网关类型：1支付宝 2微信 3余额 4 线下", dataType = "int")
    private String paymentType;

    @ApiModelProperty(value = "第三方支付返回的批次号", dataType = "string")
    private String batchNo;

    @ApiModelProperty(value = "创建时间", dataType = "date")
    private Date createdAt;

    @ApiModelProperty(value = "更新时间", dataType = "date")
    private Date updatedAt;

    @TableField(exist = false)
    private static final long serialVersionUID = 1L;
}